package com.sghj.construction.entity;

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.util.Date;

/**
 * <p>
 * 施工计划
 * </p>
 *
 * @author fbb
 * @since 2024-07-12
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("construction_plan")
@ApiModel(value="constructionPlan对象", description="施工计划表")
public class ConstructionSitePlan implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId(value = "construction_site_id", type = IdType.AUTO)
    @ApiModelProperty(value = "施工id")
    private Integer constructionSiteId;

    @ApiModelProperty(value = "日计划号")
    @TableId(value = "day_plan_number")
    private Integer dayPlanNumber;

    @ApiModelProperty(value = "线别")
    @TableId(value = "line_type")
    private String lineType;

    @ApiModelProperty(value = "地点")
    @TableId(value = "location_place")
    private String locationPlace;

    @ApiModelProperty(value = "施工项目")
    @TableId(value = "construction_site_name")
    private String constructionSiteName;

    @ApiModelProperty(value = "开始施工时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @TableId(value = "start_time")
    private Date startTime;

    @ApiModelProperty(value = "截止施工时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @TableId(value = "end_time")
    private Date endTime;

    @ApiModelProperty(value = "盯控人")
    @TableId(value = "monitoring_personnel")
    private String monitoringPersonnel;

    @ApiModelProperty(value = "盯控人联系方式")
    @TableId(value = "monitoring_phone")
    private String monitoringPhone;



    @ApiModelProperty(value = "致电状态（0未打，1已打）")
    @TableId(value = "call_status")
    private int callStatus;

    @TableId(value = "call_time")
    private Date callTime;

    @ApiModelProperty(value = "回电状态（0未回，1已回）")
    @TableId(value = "call_back_status")
    private int callBackStatus;

    @TableId(value = "call_back_phone")
    private String callBackPhone;

    @TableId(value = "call_back_time")
    private Date callBackTime;

    @ApiModelProperty(value = "备注")
    @TableId(value = "memo")
    private String memo;

    @ApiModelProperty(value = "逻辑删除（0未删除，1已删除）")
    @TableId(value = "is_delete")
    private int isDelete;

    @TableField(exist = false)
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    @TableField(exist = false)
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;
}
